package com.triones.yjj.service;

import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.page.TableDataInfo;
import com.triones.yjj.entity.bo.WxShareParams;
import com.triones.yjj.entity.vo.*;

/**
 * 分享 service 接口
 *
 * @Author: triones
 */
public interface ShareService {

    /**
     * 查询分享排行列表
     * @param activityId
     * @param pageQuery
     * @return
     */
    TableDataInfo<WxShareSortVO> selectShareSortPageList(Long activityId, PageQuery pageQuery);

    /**
     * 查询客户邀请信息
     * @param activityId
     * @param memberId
     * @param userId
     * @return
     */
    ShareVO getMemberShareInfo(Long activityId, Long memberId, Long userId);

    /**
     * 分享
     * @param activityId
     * @param memberDetailVO
     * @return
     */
    Long saveShare(Long activityId,Long staffId, MemberDetailVO memberDetailVO);

    /**
     * 分享记录
     * @param params
     * @param memberDetailVO
     * @return
     */
    Long saveShareRecord(WxShareParams params, MemberDetailVO memberDetailVO);

    /**
     * 员工分享信息
     * @param activityId
     * @param wxStaffDetailVO
     */
    Long saveStaffShare(Long activityId, WxStaffDetailVO wxStaffDetailVO);

    /**
     * 今日分享次数
     * @param staffDetailVO
     * @param activityId
     * @return
     */
    Long getTodayShareCount(WxStaffDetailVO staffDetailVO,Long activityId);

    /**
     * 详情详情
     * @param shareId
     * @return
     */
    WxShareVO getMemberShareDetail(Long shareId);
}
